function load() {
	//pagesManager.setPage(Pages.manageProduct, false)
	setEvents();
	ajax.get({
		url : "http://localhost:8080/book-service/public/book/authen/info",
		success : function(data, xhr) {
			console.log(data);

			var userName = data.getElementsByTagName("userName")[0].childNodes[0].nodeValue;
			$id("loginAdminPage").removeClass("modal");
			$id("loginAdminPage").addClass("hidden");
			$id("adminId").innerText = userName;
			
		},
		failure : function(xhr) {
			$id("loginAdminPage").addClass("modal");
			$id("loginAdminPage").removeClass("hidden");
		},
		abort : function(xhr) {
			callback.abort(xhr);
		}
	});
};

function doRequestFail() {
	$id("loginAdminPage").addClass("modal");
	$id("loginAdminPage").removeClass("hidden");
}

function trim(str) {
	var start = 0;
	var end = str.length;
	while (start < str.length && str.charAt(start) == " ")
	start++;
	while (end > 0 && str.charAt(end - 1) == " ")
	end--;
	return str.substr(start, end - start);
}

function validateBook(bName, category, author, price, des, quan) {
	var errors = [];
	if (trim(bName) == "") {
		errors[errors.length] = "Bạn chưa nhập tên sách";
	}

	if (trim(category) == "") {
		errors[errors.length] = "Bạn chưa chọn thể loại sách";
	}

	if (trim(author) == "") {
		errors[errors.length] = "Bạn chưa nhập tác giả";
	}

	if (trim(price) == "") {
		errors[errors.length] = "Bạn chưa nhập giá sách";
	}

	if (trim(des) == "") {
		errors[errors.length] = "Bạn chưa nhập mô tả sách";
	}

	if (trim(quan) == "") {
		errors[errors.length] = "Bạn chưa nhập số lượng sách";
	}

	if (errors.length > 0) {
		var msg = "Xin vui lòng điển đầy đủ thông tin sách...";
		for (var i = 0; i < errors.length; i++) {
			var numErr = i + 1;
			msg += "\n" + numErr + ". " + errors[i];
		}
		alert(msg);
		return false;
	}
	return true;
}

function validateCate(cateName) {
	var errors = [];
	if (trim(cateName) == "") {
		errors[errors.length] = "Bạn chưa nhập tên thể loại";
	}
	if (errors.length > 0) {
		var msg = "Bạn không được để trống thông tin...";
		for (var i = 0; i < errors.length; i++) {
			var numErr = i + 1;
			msg += "\n" + numErr + ". " + errors[i];
		}
		alert(msg);
		return false;
	}
	return true;
}

function validateStaffInfo(username, lname, fname, email, pwd, role, phone, address) {
	var errors = [];
	var RE_EMAIL = /^(\w+[\-\.])*\w+@(\w+\.)+[A-Za-z]+$/;
	if (trim(username) == "") {
		errors[errors.length] = "Bạn chưa nhập tên tài khoản";
	}

	if (trim(lname) == "") {
		errors[errors.length] = "Bạn chưa nhập Họ";
	}

	if (trim(fname) == "") {
		errors[errors.length] = "Bạn chưa nhập Tên";
	}

	if (!RE_EMAIL.test(email)) {
		errors[errors.length] = "Bạn nhập email không đúng mẫu";
	}

	if (trim(pwd) == "") {
		errors[errors.length] = "Bạn chưa nhập mật khẩu";
	}

	if (trim(role) == "") {
		errors[errors.length] = "Bạn chưa chọn role";
	}

	if (trim(phone) == "") {
		errors[errors.length] = "Bạn chưa nhập số điện thoại";
	}

	if (trim(address) == "") {
		errors[errors.length] = "Bạn chưa nhập địa chỉ";
	}

	if (errors.length > 0) {
		var msg = "Xin vui lòng điển đầy đủ thông tin...";
		for (var i = 0; i < errors.length; i++) {
			var numErr = i + 1;
			msg += "\n" + numErr + ". " + errors[i];
		}
		alert(msg);
		return false;
	}
	return true;
}

function Pager(tableName, itemsPerPage) {
	this.tableName = tableName;
	this.itemsPerPage = itemsPerPage;
	this.currentPage = 1;
	this.pages = 0;
	this.inited = false;

	this.showRecords = function(from, to) {
		var rows = document.getElementById(tableName).rows;

		for (var i = 0; i < rows.length; i++) {
			if (i < from || i > to) {
				rows[i].style.display = 'none';
			} else {
				rows[i].style.display = '';
			}
		}
	}

	this.showPage = function(pageNumber) {
		if (!this.inited) {
			alert("not inited!");
			return;
		}
		var oldPageAnchor = document.getElementById("pg" + this.currentPage);
		oldPageAnchor.className = "pg-normal";

		this.currentPage = pageNumber;
		var newPageAnchor = document.getElementById("pg" + this.currentPage);
		newPageAnchor.className = "pg-selected";

		var from = (pageNumber - 1) * itemsPerPage;
		var to = from + itemsPerPage - 1;
		this.showRecords(from, to);
	}

	this.prev = function() {
		if (this.currentPage > 1) {
			this.showPage(this.currentPage - 1);
		}
	}

	this.next = function() {
		if (this.currentPage < this.pages) {
			this.showPage(this.currentPage + 1);
		}
	}

	this.init = function() {
		var rows = document.getElementById(tableName).rows;
		var records = rows.length;
		this.pages = Math.ceil(records / itemsPerPage);
		this.inited = true;
	}

	this.showPageNav = function(pagerName, positionId) {
		if (!this.inited) {
			alert("not inited!");
			return;
		}
		var element = document.getElementById(positionId);
		var pagerHtml = '<span onclick="' + pagerName + '.prev();" class="pg-normal"> &#171 Prev </span> | ';

		for (var page = 1; page <= this.pages; page++) {
			pagerHtml += ' <span id="pg' + page + '" class="pg-normal" onclick="' + pagerName + '.showPage(' + page + ');">' + page + "</span> |";
		}
		pagerHtml += '<span onclick="' + pagerName + '.next();" class="pg-normal"> Next &#187; </span>';

		element.innerHTML = pagerHtml;
	}
}

function addActive(key) {
	var arr = ["product", "category", "user", "customer", "invoice", "feedback"];
	for (var i = 0; i < arr.length; i++) {
		if (arr[i] == key) {
			$id(key).addClass("active");
			continue;
		}
		$id(arr[i]).removeClass("active");

	}
}

